package com.ztesoft.web.baseconfig.db.dao.mapper;

import com.ztesoft.web.baseconfig.db.arg.DmSrcTableTempletArg;
import com.ztesoft.web.baseconfig.db.po.DmSrcTableTempletPO;

import java.math.*;
import java.util.*;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

public interface IDmSrcTableTempletMapper {
    
    List<Integer> countByArg(DmSrcTableTempletArg arg);

    List<DmSrcTableTempletPO> selectByArg(DmSrcTableTempletArg arg);

    DmSrcTableTempletPO selectByPrimaryKey(Integer id);

    List<DmSrcTableTempletPO> selectByArgAndPage(DmSrcTableTempletArg arg, RowBounds rowBound);

    int insert(DmSrcTableTempletPO record);

    int insertSelective(DmSrcTableTempletPO record);

    int insertBatch(@Param("list") List<DmSrcTableTempletPO> records);

    int updateByArgSelective(@Param("record") DmSrcTableTempletPO record,
            @Param("arg") DmSrcTableTempletArg arg);

    int updateByArg(@Param("record") DmSrcTableTempletPO record,
            @Param("arg") DmSrcTableTempletArg arg);

    int updateByPrimaryKeySelective(DmSrcTableTempletPO record);

    int updateByPrimaryKey(DmSrcTableTempletPO record);
    
    int deleteByArg(DmSrcTableTempletArg arg);
    
    int deleteByPrimaryKey(Integer id);
    
}